The mobile Internet protocol version 6 (MIPv6) allows a mobile device to maintain a continuous connection with another device that supports Internet protocol version 6. Two separate modes of communication are supported: bidirectional tunneling (BT) mode and route optimization (RO) mode. RO mode dynamically updates the routing of traffic between a mobile device or “mobile node” (MN) and a node that is communicating or corresponding with the mobile node, i.e., a corresponding node (CN). BT mode tunnels traffic between the MN and CN through a home agent (HA) device or home agent node on a home network. The HA node is updated with a location of the MN on a new network and relays data traffic to the CN. Both the home and visited networks run IPv6 and are equipped with network address translation (NAT64) and domain name server (DNS64) nodes to enable IPv6 nodes to access the IPv4 nodes outside the IPv6 network by treating outside IPv4 nodes as virtual IPv6-enabled nodes. Under this scheme, nodes in the home or visited networks will see a CN that is an IPv4 node as being an IPv6 node and will send data packets to a virtual IPv6 destination address. However, these packets will be captured by the local NAT64 node and translated into IPv4 packets before being forwarded to the CN IPv4 destination.
Conversely, when communicating with an MN or other IPv6 mode, the CN operates as if it is connected to an IPv4 node. The CN will send data packets to the MN using an IPv4 destination address. These packets are captured by the NAT64 node located in the home network of the MN and translated into IPv6 packets then forwarded to their final destination.
However, in the NAT64/DNS64 technology, each network equipped with DNS64 technology will synthesize locally a different AAAA record (i.e., the DNS record which refers to an IPv6 address) for a particular IPv4 address. Such “fake” or “virtual” IPv6 addresses carry a prefix that is recognizable only by the home NAT64 node as being one, which requires a translation to IPv4. Another NAT64 located in a different network and attached to a different DNS64 is not able to translate the IPv6 address without additional information.
When the MN tries to connect to an IPv4 native CN from a foreign network, the visited DNS64 will synthesize an AAAA record that would carry a virtual IPv6 address known only by the NAT64 node located in the visited network (i.e., a foreign NAT64 node). However, in the MIPv6 protocol, using the BT mode requires tunneling the data packets to the home network (i.e., the home agent (HA) node, which in turn forwards the data traffic to its final destination. In such cases, data packets tunneled by the MN to its HA node can't be forwarded to the home NAT64 node, because the prefix used to generate the IPv6 address for the CN is unknown to both the HA and the home NAT64 nodes. As a result, connectivity is lost. The RO mode is not usable, because it requires that both the MN and CN be IPv6 nodes.